1. Field of Invention
This invention describes an electronic catalog searching system and more particularly, a catalog searching system for object oriented databases.
2. Background Art
It is well recognized that procurement systems have traditionally been manual, labor intensive and quite costly operations. Suppliers, for example will do mass mailings of catalogs to potential customers, the customers would browse the catalogs and select items to be purchased and then the customer would complete a paper order form, or call the supplier to order the items. The entire process, from preparing the catalog to receipt of the order, is very labor intensive and often took several weeks. If a supplier wanted to continually update his catalogs, or provide different price schedules to different customers, the printing, distribution and administrative costs would be substantial.
On a relatively small scale, some suppliers have offered catalogs through computer services, such as PRODIGY (TM). Employing PRODIGY (TM), a computer user can dial-up a service from home and select items to purchase from various catalogs maintained on the system. Upon selection, PRODIGY (TM) initiates the order with the supplier. While this has made significant improvements in typical procurement situations, there are still numerous needs remaining to be fulfilled.
The recent proliferation of electronic media has resulted in an explosion of electronic catalogs, for the managing parts within businesses and corporations and for selling products to consumers. Accompanying this growth is the continued investigation and implementation of different browsing strategies that offer intuitive techniques to aid users when searching and navigating large spaces of information. Electronic catalogs typically provide some form of search or navigation capability that users can employ in the location of parts or products.
Regarding this navigation capability, let us consider "Hierarchical Navigation" techniques as demonstrated by this instant invention. The majority of electronic catalogs have some category structure (e.g., node hierarchy) under which parts or products are categorized such as Cadis, Net. Commerce, Saqquara, Trilogy, Mediashare, iCat. This category hierarchy provides an alternative to search in the location of parts or products in an electronic catalog.
Parametric search techniques are based on the specification of values for attributes (or parameters). The simplest and most common form of search available in electronic catalogs today is keyword search (e.g. find the parts that have substring TP001 in their product descriptions). The next most common form of search is parametric search (e.g., find the product with an attribute "memory" whose value is "32 mb"). A more complex form of parametric search is enable when it is combined with "forward checking". Forward Checking involves a consistency maintenance mechanism that consists of a pruning technique that when implemented with a parametric search dynamically restricts attribute domains based on past attribute value assignments.
Forward checking permits a limited form of attribute relevance. It is limited because an attribute must be either relevant or irrelevant; there is no notion of strong or weak relevance. An attribute is defined as strongly relevant when it is relevant to all entities of the current node in the hierarchy while an attribute is considered weakly relevant when the attribute is relevant to a subset of the entities of the current node in the hierarchy and is considered irrelevant when the attribute is not relevant to any of the entities of the current node in a hierarchy. An entity represents concrete things in the world (e.g. products, services, people, etc.). Throughout this patent application, the word entity and concrete entity are used interchangeably. It is further important to note that the term hierarchical exploration involves the utilization of attribute relevance combined with forward checking parametric search to browse and navigate node hierarchies.
Consider the sample products listed in Table 1. Notice that the first column, "Part Number", identifies the product, the second column represents the "Memory" attribute for the products, and the third column, "Battery Life" attribute for the products. Table 1, shows sample data.
TABLE 1 ______________________________________ Battery Part Number Memory Hard Disk Life ______________________________________ TP001-M01 32 mb 1.2 gb 1.7 hr TP001-M02 16 mb 1.2 gb 2.0 hr TP001-M03 16 mb 2.0 gb 2.2 hr AP001-N01 64 mb 2.0 gb -- hr ______________________________________
The parametric search interface may be visualized as shown in Table 2 where the attributes are shown on the left and the values listed off to the right. Initially, all attributes are relevant to the beginning of the search problem. The user goes about finding a product by making value selections for the attributes. Table 2 shows Sample User Interface-1.
TABLE 2 ______________________________________ Memory 16 mb, 32 mb, 64 mb Hard Disk 1.2 gb, 2.0 gb Battery Life 1.7 hr, 2.0 hr, 2.2 hr. ______________________________________
Given that a user has selected 2.0 gb as the value for Hard Disk attributes, the user interface would update as indicated in Table 3. Notice that "forward-checking" was used to narrow the domain of possible values for the Memory and Battery Life attributes to those values that remain consistent with the current set of attribute assignments. Maintaining consistency, here, refers to the act of only displaying the attribute values of those products that have not been eliminated as a result of past attribute value selections (the feasibility set of products). As a result of the 2.0 gb selection for Hard Disk both the TP001-M01 and TP002-M02 products have been eliminated from the feasibility set of products.
TABLE 3 ______________________________________ Memory 16 mb, 64 mb Hard Disk 2.0 gb Battery Life 2.2 hr. ______________________________________
Assume that a user selects 64 mb as the value for Memory, the user interface would be updated as indicated in Table 4. Notice that forward-checking was used to further narrow the domain of possible values for the Memory and Battery attributes. In addition notice that Battery Life was eliminated as an attribute from the interface; this is because its domain was narrowed to the empty set and consequently became irrelevant to the current state of the problem. As a result of the 64 mb selection for Memory, the TP003-M03 product has been eliminated from the feasible set of products; one product remains in the feasiblity set: AP001-N01
TABLE 4 ______________________________________ Memory 64 mb Hard Disk 2.0 gb ______________________________________
Notice that this sample demonstrates how parametric search when combined with forward checking provides a limited form of attribute relevance (i.e., attributes are either relevant or irrelevant). Existing catalogs that utilize this form of search (i.e., Saqquara, Net. Commerce Catalog Assistant, Trilogy, Cadis, and Calico) are limited to performing this type of search either over an entire product or part base or over a subset of products or parts within a categorization. There are several inadequacies of systems employing the hierarchical navigation and parametric search capabilities discussed above. These inadequacies are as follows:
1. Hierarchical navigation does not incorporate any form of parametric search or attribute relevance.
2. Parametric search is isolated either to the entire base of parts or products or to the products within the scope of a hierarchical node (i.e., category).
3. Parametric search does not allow for hierarchical navigation.
4. Parametric search does not allow for hierarchical browsing.
5. Several hierarchies may exist for a single base of parts or products.